Pycharm, 生成可执行文件,Unhandled exception in script报错 您所在的位置:网站首页 python script path must be set Pycharm, 生成可执行文件,Unhandled exception in script报错

Pycharm, 生成可执行文件,Unhandled exception in script报错

2023-10-15 11:52| 来源: 网络整理| 查看: 265

我是小鱼,今天是2021年8月31日,这是我学习python的第一篇文章,用于记录在python学习中遇到的问题。

环境:Pycharm, terminal生成.exe文件

项目:书《Python编程 - 从入门到实践》中第12-14章《外星人入侵》的游戏

问题描述,在Pycharm中运行正常,生成exe文件也成功了。但是双击运行时,出现下图错误

“Failed to execute script'alien_invasion”due to unhandled exception: expected str, bytes or os. PathLike object, not BytesIO

在CSDN上搜索,有个帖子说,是因为使用 pyinstaller -w -F 产生的,换成pyinstaller -c -F就好。

当我更换命令后,不再出现上面报错框,但是出现一个黑色的框,一闪而过。程序依然无法使用。拼手速把一闪而过的黑框截屏下来。如下:

从上面的提示里找到对应文件, 第14行,如下:

这里本身是有个报警,但是在pycharm里运行是没有影响的。因为我对pygame没有那么熟,只是按照说上说sysfont第一个参数写None, 后来的解决方法是改成“arial”,因为我确定系统里是有这个字体的。

报警解除后再次生成.exe,运行再次出错。用-c命令快速截图看原因

 找到相应的行,如下:

 第14行是一个图片的相对位置,生成的.exe文件是放在dist文件夹下的,这个在别人的帖子里提到过,因为是相对位置,所以.exe文件必须要与images文件夹在同一个目录下。移动后问题完美解决。

简单总结一下,-w的命令虽然能出提示框,但是没有具体的错误位置,-c的命令可以有具体位置,但是出现的太快。这两个命令都很有用。另外,在pycharm中尽量不要有报警,即使可以在pycharm中运行,但是不能保证能生成可执行文件。

第一次自己生成了一个小游戏。纪念一下。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有